* startup.el (normal-top-level, command-line, command-line-1):
authorJim Blandy <jimb@redhat.com>
Tue, 18 May 1993 22:39:51 +0000 (22:39 +0000)
committerJim Blandy <jimb@redhat.com>
Tue, 18 May 1993 22:39:51 +0000 (22:39 +0000)
Don't call the frame and face initialization functions unless
they're bound.

* frame.el (frame-notice-user-settings): Don't make
frame-initial-frame unbound; just set it to nil.
* startup.el (command-line-1): Call frame-notice-user-settings
before displaying the startup message.

lisp/startup.el

index 10777d018e19b16616561987f2b1ba5919702f55..b7552fad26b5d407c19324fe54252e63e5027dd0 100644 (file)
@@ -147,7 +147,8 @@ directory name of the directory where the `.emacs' file was looked for.")
       (run-hooks 'emacs-startup-hook)
       (and term-setup-hook
           (run-hooks 'term-setup-hook))
-      (frame-notice-user-settings)
+      (if (fboundp 'frame-notice-user-settings)
+         (frame-notice-user-settings))
       (and window-setup-hook
           (run-hooks 'window-setup-hook)))))
 
@@ -214,9 +215,10 @@ directory name of the directory where the `.emacs' file was looked for.")
     (setcdr command-line-args args))
 
   ;; Under X Windows, this creates the X frame and deletes the terminal frame.
-  (frame-initialize)
-
-  (face-initialize)
+  (if (fboundp 'frame-initialize)
+      (frame-initialize))
+  (if (fboundp 'face-initialize)
+      (face-initialize))
 
   (run-hooks 'before-init-hook)
 
@@ -293,6 +295,14 @@ directory name of the directory where the `.emacs' file was looked for.")
                  (run-hooks 'term-setup-hook))
             ;; Don't let the hook be run twice.
             (setq term-setup-hook nil)
+
+            ;; It's important to notice the user settings before we
+            ;; display the startup message; otherwise, the settings
+            ;; won't take effect until the user gives the first
+            ;; keystroke, and that's distracting.
+            (if (fboundp 'frame-notice-user-settings)
+                (frame-notice-user-settings))
+
             (and window-setup-hook
                  (run-hooks 'window-setup-hook))
             (setq window-setup-hook nil)